<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Irrlicht 3D Engine: irr::scene::IAnimatedMesh Class Reference</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  <td id="projectlogo"><img alt="Logo" src="irrlichtlogo.png"/></td>
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">Irrlicht 3D Engine
   
   </div>
   
  </td>
  
  
  
   
   <td>        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
</td>
   
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.5.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="dynsections.js"></script>
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
  initNavTree('classirr_1_1scene_1_1_i_animated_mesh.html','');
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">irr::scene::IAnimatedMesh Class Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="irr::scene::IAnimatedMesh" --><!-- doxytag: inherits="irr::scene::IMesh" -->
<p>Interface for an animated mesh.  
 <a href="classirr_1_1scene_1_1_i_animated_mesh.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="_i_animated_mesh_8h_source.html">IAnimatedMesh.h</a>&gt;</code></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for irr::scene::IAnimatedMesh:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
 <div class="center">
  <img src="classirr_1_1scene_1_1_i_animated_mesh.png" usemap="#irr::scene::IAnimatedMesh_map" alt=""/>
  <map id="irr::scene::IAnimatedMesh_map" name="irr::scene::IAnimatedMesh_map">
<area href="classirr_1_1scene_1_1_i_mesh.html" title="Class which holds the geometry of an object." alt="irr::scene::IMesh" shape="rect" coords="388,56,572,80"/>
<area href="classirr_1_1_i_reference_counted.html" title="Base class of most objects of the Irrlicht Engine." alt="irr::IReferenceCounted" shape="rect" coords="388,0,572,24"/>
<area href="classirr_1_1scene_1_1_i_animated_mesh_m_d2.html" title="Interface for using some special functions of MD2 meshes." alt="irr::scene::IAnimatedMeshMD2" shape="rect" coords="0,168,184,192"/>
<area href="classirr_1_1scene_1_1_i_animated_mesh_m_d3.html" title="Interface for using some special functions of MD3 meshes." alt="irr::scene::IAnimatedMeshMD3" shape="rect" coords="194,168,378,192"/>
<area href="classirr_1_1scene_1_1_i_q3_level_mesh.html" title="Interface for a Mesh which can be loaded directly from a Quake3 .bsp-file." alt="irr::scene::IQ3LevelMesh" shape="rect" coords="388,168,572,192"/>
<area href="classirr_1_1scene_1_1_i_skinned_mesh.html" title="Interface for using some special functions of Skinned meshes." alt="irr::scene::ISkinnedMesh" shape="rect" coords="582,168,766,192"/>
<area href="structirr_1_1scene_1_1_s_animated_mesh.html" title="Simple implementation of the IAnimatedMesh interface." alt="irr::scene::SAnimatedMesh" shape="rect" coords="776,168,960,192"/>
</map>
 </div></div>

<p><a href="classirr_1_1scene_1_1_i_animated_mesh-members.html">List of all members.</a></p>
<h2><a name="pub-methods"></a>
Public Member Functions</h2>
<ul>
<li>virtual <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> <a class="el" href="classirr_1_1scene_1_1_i_animated_mesh.html#acb4249295319c8240d5bedc167417435">getAnimationSpeed</a> () const =0
<dl class="el"><dd class="mdescRight">Gets the animation speed of the animated mesh.  <a href="#acb4249295319c8240d5bedc167417435"></a><br/></dl><li>virtual <a class="el" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804">u32</a> <a class="el" href="classirr_1_1scene_1_1_i_animated_mesh.html#a2ec99aba081e9f37802e8ea9cd65629b">getFrameCount</a> () const =0
<dl class="el"><dd class="mdescRight">Gets the frame count of the animated mesh.  <a href="#a2ec99aba081e9f37802e8ea9cd65629b"></a><br/></dl><li>virtual <a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a> * <a class="el" href="classirr_1_1scene_1_1_i_animated_mesh.html#adccb39fee83bed36a464cf7b96f3a0ca">getMesh</a> (<a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a> frame, <a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a> detailLevel=255, <a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a> startFrameLoop=-1, <a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a> endFrameLoop=-1)=0
<dl class="el"><dd class="mdescRight">Returns the <a class="el" href="classirr_1_1scene_1_1_i_mesh.html" title="Class which holds the geometry of an object.">IMesh</a> interface for a frame.  <a href="#adccb39fee83bed36a464cf7b96f3a0ca"></a><br/></dl><li>virtual <a class="el" href="namespaceirr_1_1scene.html#a2fc85a64604521ca063f1881b5dd1c61">E_ANIMATED_MESH_TYPE</a> <a class="el" href="classirr_1_1scene_1_1_i_animated_mesh.html#a227b7899a59ff22b73b953d54c8b17b7">getMeshType</a> () const 
<dl class="el"><dd class="mdescRight">Returns the type of the animated mesh.  <a href="#a227b7899a59ff22b73b953d54c8b17b7"></a><br/></dl><li>virtual void <a class="el" href="classirr_1_1scene_1_1_i_animated_mesh.html#a5eb1b09d96547dbd273d489e58d62658">setAnimationSpeed</a> (<a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> fps)=0
<dl class="el"><dd class="mdescRight">Sets the animation speed of the animated mesh.  <a href="#a5eb1b09d96547dbd273d489e58d62658"></a><br/></dl></ul>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Interface for an animated mesh. </p>
<p>There are already simple implementations of this interface available so you don't have to implement this interface on your own if you need to: You might want to use <a class="el" href="structirr_1_1scene_1_1_s_animated_mesh.html" title="Simple implementation of the IAnimatedMesh interface.">irr::scene::SAnimatedMesh</a>, <a class="el" href="structirr_1_1scene_1_1_s_mesh.html" title="Simple implementation of the IMesh interface.">irr::scene::SMesh</a>, <a class="el" href="namespaceirr_1_1scene.html#a76de145884afd2965d09c28d6bf89616" title="Standard meshbuffer.">irr::scene::SMeshBuffer</a> etc. </p>

<p>Definition at line <a class="el" href="_i_animated_mesh_8h_source.html#l00062">62</a> of file <a class="el" href="_i_animated_mesh_8h_source.html">IAnimatedMesh.h</a>.</p>
</div><hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="acb4249295319c8240d5bedc167417435"></a><!-- doxytag: member="irr::scene::IAnimatedMesh::getAnimationSpeed" ref="acb4249295319c8240d5bedc167417435" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> irr::scene::IAnimatedMesh::getAnimationSpeed </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Gets the animation speed of the animated mesh. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>The number of frames per second to play the animation with by default. If the amount is 0, it is a static, non animated mesh. </dd></dl>

<p>Implemented in <a class="el" href="structirr_1_1scene_1_1_s_animated_mesh.html#a664c34fc3f3b60de1fd16b7f4a6b41f7">irr::scene::SAnimatedMesh</a>.</p>

</div>
</div>
<a class="anchor" id="a2ec99aba081e9f37802e8ea9cd65629b"></a><!-- doxytag: member="irr::scene::IAnimatedMesh::getFrameCount" ref="a2ec99aba081e9f37802e8ea9cd65629b" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804">u32</a> irr::scene::IAnimatedMesh::getFrameCount </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Gets the frame count of the animated mesh. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>The amount of frames. If the amount is 1, it is a static, non animated mesh. </dd></dl>

<p>Implemented in <a class="el" href="structirr_1_1scene_1_1_s_animated_mesh.html#a1e9a9929d7b5f943294031b41769d123">irr::scene::SAnimatedMesh</a>.</p>

</div>
</div>
<a class="anchor" id="adccb39fee83bed36a464cf7b96f3a0ca"></a><!-- doxytag: member="irr::scene::IAnimatedMesh::getMesh" ref="adccb39fee83bed36a464cf7b96f3a0ca" args="(s32 frame, s32 detailLevel=255, s32 startFrameLoop=&#45;1, s32 endFrameLoop=&#45;1)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classirr_1_1scene_1_1_i_mesh.html">IMesh</a>* irr::scene::IAnimatedMesh::getMesh </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a>&#160;</td>
          <td class="paramname"><em>frame</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a>&#160;</td>
          <td class="paramname"><em>detailLevel</em> = <code>255</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a>&#160;</td>
          <td class="paramname"><em>startFrameLoop</em> = <code>-1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a>&#160;</td>
          <td class="paramname"><em>endFrameLoop</em> = <code>-1</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the <a class="el" href="classirr_1_1scene_1_1_i_mesh.html" title="Class which holds the geometry of an object.">IMesh</a> interface for a frame. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">frame,:</td><td>Frame number as zero based index. The maximum frame number is <a class="el" href="classirr_1_1scene_1_1_i_animated_mesh.html#a2ec99aba081e9f37802e8ea9cd65629b" title="Gets the frame count of the animated mesh.">getFrameCount()</a> - 1; </td></tr>
    <tr><td class="paramname">detailLevel,:</td><td>Level of detail. 0 is the lowest, 255 the highest level of detail. Most meshes will ignore the detail level. </td></tr>
    <tr><td class="paramname">startFrameLoop,:</td><td>Because some animated meshes (.MD2) are blended between 2 static frames, and maybe animated in a loop, the startFrameLoop and the endFrameLoop have to be defined, to prevent the animation to be blended between frames which are outside of this loop. If startFrameLoop and endFrameLoop are both -1, they are ignored. </td></tr>
    <tr><td class="paramname">endFrameLoop,:</td><td>see startFrameLoop. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Returns the animated mesh based on a detail level. </dd></dl>

<p>Implemented in <a class="el" href="structirr_1_1scene_1_1_s_animated_mesh.html#a132d5f643fe02b57480d945e8d5be2d2">irr::scene::SAnimatedMesh</a>.</p>

</div>
</div>
<a class="anchor" id="a227b7899a59ff22b73b953d54c8b17b7"></a><!-- doxytag: member="irr::scene::IAnimatedMesh::getMeshType" ref="a227b7899a59ff22b73b953d54c8b17b7" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="namespaceirr_1_1scene.html#a2fc85a64604521ca063f1881b5dd1c61">E_ANIMATED_MESH_TYPE</a> irr::scene::IAnimatedMesh::getMeshType </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the type of the animated mesh. </p>
<p>In most cases it is not neccessary to use this method. This is useful for making a safe downcast. For example, if <a class="el" href="classirr_1_1scene_1_1_i_animated_mesh.html#a227b7899a59ff22b73b953d54c8b17b7" title="Returns the type of the animated mesh.">getMeshType()</a> returns EAMT_MD2 it's safe to cast the <a class="el" href="classirr_1_1scene_1_1_i_animated_mesh.html" title="Interface for an animated mesh.">IAnimatedMesh</a> to <a class="el" href="classirr_1_1scene_1_1_i_animated_mesh_m_d2.html" title="Interface for using some special functions of MD2 meshes.">IAnimatedMeshMD2</a>. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>Type of the mesh. </dd></dl>

<p>Reimplemented in <a class="el" href="structirr_1_1scene_1_1_s_animated_mesh.html#a23f9a13007672e07c1622abd4e7f93ca">irr::scene::SAnimatedMesh</a>.</p>

<p>Definition at line <a class="el" href="_i_animated_mesh_8h_source.html#l00105">105</a> of file <a class="el" href="_i_animated_mesh_8h_source.html">IAnimatedMesh.h</a>.</p>

<p>References <a class="el" href="_i_animated_mesh_8h_source.html#l00019">irr::scene::EAMT_UNKNOWN</a>.</p>

</div>
</div>
<a class="anchor" id="a5eb1b09d96547dbd273d489e58d62658"></a><!-- doxytag: member="irr::scene::IAnimatedMesh::setAnimationSpeed" ref="a5eb1b09d96547dbd273d489e58d62658" args="(f32 fps)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::IAnimatedMesh::setAnimationSpeed </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
          <td class="paramname"><em>fps</em></td><td>)</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets the animation speed of the animated mesh. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">fps</td><td>Number of frames per second to play the animation with by default. If the amount is 0, it is not animated. The actual speed is set in the scene node the mesh is instantiated in. </td></tr>
  </table>
  </dd>
</dl>

<p>Implemented in <a class="el" href="structirr_1_1scene_1_1_s_animated_mesh.html#ae7a32638fe5c59007d044bbc3c170108">irr::scene::SAnimatedMesh</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="_i_animated_mesh_8h_source.html">IAnimatedMesh.h</a></li>
</ul>
</div>
</div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="namespaceirr.html">irr</a>      </li>
      <li class="navelem"><a class="el" href="namespaceirr_1_1scene.html">scene</a>      </li>
      <li class="navelem"><a class="el" href="classirr_1_1scene_1_1_i_animated_mesh.html">IAnimatedMesh</a>      </li>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>


    <li class="footer">
<a href="http://irrlicht.sourceforge.net" target="_blank">Irrlicht 
Engine</a> Documentation &copy; 2003-2012 by Nikolaus Gebhardt. Generated on Sat Jul 9 2016 18:18:37 for Irrlicht 3D Engine by
<a href="http://www.doxygen.org/index.html" target="_blank">Doxygen</a> 1.7.5.1 </li>
   </ul>
 </div>


</body>
</html>
